Information Processing Apparatus Employing Printer Driver, and Non-Transitory Computer-Readable Medium Storing Instructions Therefor

ABSTRACT

A controller of an information processing apparatus is configured to receive image data representing a first size image, the first size being a size within which a first number of first objects can be printed, extract second image data included in the first image data, the second image data representing the first object, create first print data used to print the second number of first objects on the second size sheet in an arranged manner based on the extracted second image data, the second number being less than the first number, the first size being a size of a sheet on which the first number of first objects can be arranged, the second size being a size of a sheet on which the first number of first objects cannot be arranged but the second number of first objects can be arranged, the first print data being transmitted to a printer.

CROSS-REFERENCE TO RELATED APPLICATIONS

This application is a continuation of U.S. patent application Ser. No.16/021,118 filed Jun. 28, 2018 which claims priority under 35 U.S.C. §119 from Japanese Patent Application No. 2017-164223 filed on Aug. 29,2017. The entire subject matter of the application is incorporatedherein by reference.

BACKGROUND Technical Field

The present disclosures relate to a non-transitory computer-readablemedium storing instructions realizing a printer driver with which anobject such as a barcode can be printed on a printing sheet. The presentdisclosures also relate to an information processing apparatus employingthe printer driver.

Related Art

There has been known a technique for printing objects such as barcodeson a label sheet on which a plurality of labels (e.g. item labels) arearranged in a matrix.

SUMMARY

According to a conventional art, it is possible to print objects on thelabel sheet. It is noted, however, that if the number of labels arrangedon one label sheet is relatively large, the objects may not be printedon all the labels of the label sheet, and the unprinted labels will bewasted. Therefore, it is preferable that the number of unprinted labelsin such a label sheet is reduced.

According to aspects of the present disclosures, there is provided anon-transitory computer-readable medium for an information processingapparatus having a communication interface and a controller. Thenon-transitory computer readable medium storing instructions realizes aprinter driver, which causes, when executed, the controller to receiveimage data representing the first size image from an application via anoperating system, an operating system being installed in the informationprocessing apparatus, the controller being configured to read anapplication capable of outputting an image data representing a firstsize image which is a size of a printing sheet on which a first numberof first objects can be printed, extract second image data included inthe first image data which is the first sized image data received fromthe application, the second image data being image data representing thefirst object, create first print data used to print the second number offirst objects on the second size sheet in an arranged manner based onthe extracted second image data, the second number being less than thefirst number, the first size being a size of a sheet on which the firstnumber of first objects can be arranged, the second size being a size ofa sheet on which the first number of first objects cannot be arrangedbut the second number of first objects can be arranged, and transmit thefirst print data as created to a printer through the communicationinterface, the communication interface being configured to communicatewith the printer.

According to aspects of the present disclosures, there is provided aninformation processing apparatus having a communication interface and acontroller, The non-transitory computer readable medium storinginstructions realizes a printer driver, which causes, when executed, thecontroller to receive image data representing a first size image from anapplication via an operating system, the operating system beinginstalled in the information processing apparatus, the controller beingconfigured to read an application capable of outputting an image datarepresenting a first size image which is a size of a printing sheet onwhich first objects arranged in M columns can be printed, extract secondimage data included in the first image data which is the first sizedimage data received from the application, the second image data beingimage data representing the first object, create first print data usedto print the second number of first objects on the second size sheet inan arranged manner based on the extracted second image data, the secondnumber being less than the first number, the first size being a size ofa sheet on which the first number of first objects can be arranged, thesecond size being a size of a sheet on which the first number of firstobjects cannot be arranged but the second number of first objects can bearranged, and transmit the first print data as created to the printerthrough the communication interface, the communication interface beingconfigured to communicate with a printer.

According to aspects of the present disclosures, there is provided aninformation processing apparatus having a communication interface and acontroller, the controller being configured to receive image datarepresenting a first size image from the application, the first sizebeing a size within which a first number of first objects can beprinted, extract second image data included in the first image datawhich is the first sized image data received from the application, thesecond image data being image data representing the first object, createfirst print data used to print the second number of first objects on thesecond size sheet in an arranged manner based on the extracted secondimage data, the second number being less than the first number, thefirst size being a size of a sheet on which the first number of firstobjects can be arranged, the second size being a size of a sheet onwhich the first number of first objects cannot be arranged but thesecond number of first objects can be arranged, and transmit the firstprint data as created to a printer through the communication interface,the communication interface being configured to communicate with theprinter.

According to aspects of the present disclosures, there is provided aninformation processing apparatus having a communication interface and acontroller, the controller is configured to receive image datarepresenting a first size image from the application, the first sizebeing a size within which first objects arranged in M columns can beprinted, extract second image data included in the first image datawhich is the first sized image data received from the application, thesecond image data being image data representing the first object, createfirst print data used to print first objects on the second size sheetarranged in N columns based on the extracted second image data, the Ncolumns being less than the M columns, the first size being a size of asheet within which the first objects can be arranged in M columns, thesecond size being a size of a sheet within which the first objectscannot be arranged in M columns but can be arranged in N columns, andtransmit the first print data as created to the printer through thecommunication interface, the communication interface being configured tocommunicate with a printer.

BRIEF DESCRIPTION OF THE ACCOMPANYING DRAWINGS

FIG. 1 is a block diagram of a communication system according to anillustrative embodiment.

FIG. 2 shows an example of a barcode image.

FIG. 3 shows a barcode image display screen.

FIG. 4 is an application-compliant setting screen 86.

FIGS. 5A-5C respectively show various types of label sheets.

FIG. 6 shows an application-compliant setting screen.

FIG. 7 shows a driver-compliant first setting screen.

FIG. 8 shows a driver-compliant second setting screen.

FIG. 9 shows a driver-compliant third setting screen.

FIGS. 10A and 10B show examples of “DevMode” structures.

FIG. 11 schematically shows an A4-Letter size.

FIG. 12 is a flowchart illustrating a process of a printer driver.

FIG. 13 is a flowchart illustrating a process of the printer driver.

FIGS. 14 and 15 show a flowchart illustrating a process of the printerdriver.

DETAILED DESCRIPTION OF THE EMBODIMENTS

<Configuration of Communication System>

FIG. 1 is a block diagram of a communication system 1 according to anillustrative embodiment of the present disclosures. The communicationsystem 1 includes a PC (which is an example of an information processingapparatus) 10, a printer (which is an example of a printer) 50, aprinter 52, a server 54, a router 56 and the Internet 58.

The PC 10 is mainly provided with a CPU (which is an example of acomputer and a controller) 12, a memory 14, an LCD (which is an exampleof a display I/F) 16, an input I/F (which is an example of a useroperation reception I/F) 18, and a network I/F (which is an example of acommunication I/F) 20, which are communicatably interconnected with eachother through a bus 22.

The CPU 12 executes various processes in accordance with a controlprogram 26 (which is an example of an application), a printer driver 28,a printer driver 30, and an OS 32 stored in the memory 14. The controlprogram 26 is a program used to browse and enabling a user to printfiles of particular formats (e.g., PDF files), an example of which beingAdobe Reader®. The printer driver 28 is a device driver of the printer50, and controls an operation of the printer 50. The printer driver 30is a printer driver of the printer 52, and controls an operation of theprinter 52. That is, the printer drivers 28 and 30 are programs which,when executed by the CPU 12, control the printers 50 and 52,respectively. The OS 32 is a program providing basic functions which areused by the control program 26, and the printer drivers 28 and 30.

It is noted that, in the following description, the CPU 12 executingcontrol program 26 and the like will occasionally be referred to by thename of the program. For example, the CPU 12 executing the controlprogram 26 to perform a certain process will occasionally be describedsuch that the control program 26 executes the certain process.

The memory 14 has a data storage area 34. The data storage area 34 is anarea configured to store data necessary to execute the control program26 and the like. According to the illustrative embodiment, the memory 14is configured as a combination of a RAM, a ROM, a flash memory, an HDDand a buffer provided to the CPU 12 or the like.

It is noted that the memory 14 may be a computer-readable storagemedium. The computer-readable storage medium is a non-transitory medium.The non-transitory medium includes, in addition to the computer-readablestorage medium above, a recording medium such as a CD-ROM, a DVD-ROM andthe like. It is also noted that the non-transitory medium is a tangiblemedium. In contrast, an electrical signal carrying programs downloadedfrom a server on the Internet or the like is a computer-readable signalmedium, which is one type of a computer-readable medium, is not includedin the non-transitory computer-readable storage medium.

The LCD 16 is configured to display various functions of the PC 10. Theinput I/F 18 includes a keyboard and a mouse, and serves as an interfacethrough which user operations are input to the CPU 12. The network I/F20 is connected to the printers 50 and 52 through the router 56.Further, the router 56 is connected to the server 54 through theInternet 58. According to the above configuration, the PC 10transmits/receives information to/from the printers 50, 52 and theserver 54.

According to the illustrative embodiment, the printer 50 is a deviceconfigured to perform printing on a particular sheet, for example, atape-type sheet 60 (see FIG. 5B) 60. The printer 52 is a deviceconfigured to perform printing on a generally used sheet, for example,an A4-size sheet (see FIG. 5A) 62 and the like.

<Operation of Communication System>

It is noted that, in the following description, processes of the CPU 12in accordance with instructions scripted in programs are basicallyindicated. Processes indicated by terms “determine”, “extract”,“select”, “calculate”, “judge”, “identify”, “obtain”, “receive”,“control”, and “set” are the processes of the CPU 12. It is noted thatthe processes executed by the CPU 12 include a hardware control throughthe OS 32. It is further noted that the term “obtain” will be used tomean a concept in which a request is not necessary. That is, a processin which the CPU 12 receive data without requesting for the same isincluded in a concept that the CPU 12 obtains the data. Further, a term“data” in the specification is represented by a computer-readable bitarray. A plurality of pieces of data having substantially the samemeaning/contents but different formats will be treated as the same data.A term “information” used in the specification will be treated in thesame manner. Further, the processes of “instruct”, “respond” and“request” are executed by communicating information/data indicating“instruct”, “respond” and “request”, respectively. Further, the processsuch as “setting” is executed by storing the input setting informationin the memory.

The communication system 1 is configured to perform printing of itemlabels which are used for a service provided by a service providingcompany. An example of such service is known as FULFILMENT by AMAZON®.

According to the illustrative embodiment, the server 54 is a serveroperated by the service providing company. The PC 10 operated by theuser accesses the server 54 to obtain image data representing an imageto be printed on item labels 70. As shown in FIG. 2, the image(hereinafter, referred to as a barcode image; which is an example of afirst object) 72 to be printed on the item label 70 includes a barcode74 to identify an item, an item name 76 indicating the name of the itemto be exhibited, and condition of the item. The user is required toattach the item label to each of exhibition object items. Accordingly,it is necessary for the user to obtain image data representing a barcodecorresponding to each of the exhibition object items (hereinafter, suchimage data being referred to as barcode image data). That is, when thenumber of the exhibition object items is ten, the user needs to obtainten pieces of barcode image data respectively representing the tenexhibition object items from the server 54.

Therefore, with use of the PC 10, the user obtains image data of theitem labels 70 representing the sales object items, namely, the barcodeimage data representing the barcode images 72 from the server 54.According to the illustrative embodiment, the barcode image dataobtained from the server 54 is PDF format image data. The user accessesa webpage of the server 54 using the PC 10, and inputs a seller accountof the user, item names, the number of items, condition of the items andthe like. Further, the user inputs, to the webpage, that the printingsheet is an A4 size label sheet 62 on which 21 item labels 70 arearranged in a matrix of seven rows and three columns. Then, the server54 creates PDF format image data representing an image in which thebarcode images are arranged at positions corresponding to the itemlabels which are arranged in the matrix of seven rows and three columns,and transmits the thus created image data to the PC 10. When, forexample, the user inputs that the user intends to sell three items A andseven items B, the barcode images 72 include three barcode imagesrespectively indicating the items A, and seven barcode imagesrespectively indicating the items B. Each of the barcode imagesindicating the items A and the barcode images indicating the items B isan example of a first object.

The control program 26 is an application displaying PDF format imagedata. The control program 26 displays a barcode image display screen 80shown in FIG. 3 on the LCD 16 based on the PDF format image data createdby the server 54. It is noted that, in the image data created by theserver 54, objects other than the barcode image 72 (e.g., a logo of theservice providing company) may be or may not be included.

When a print button 82 is operated on the barcode image display screen80, as the control program 26 is executed, and an application-compliantsetting screen 86 shown in FIG. 4 is displayed on the LCD 16. When aprint button 88 is operated on the application-compliant setting screen86, the control program 26 is executed, the image data is obtained fromthe server 54, then, the print-target barcode image data is transmittedto the printer driver 30. When the printer driver 30 receives the imagedata, as the printer driver 30 is executed, image data for printing(hereinafter, referred to as print image data) which is used to print animage representing the print-target barcode images 72 to be printed onthe printing sheet is created based on the received image data. It isnoted that, in the application-compliant setting screen 86, an input toselect the printer 52 as the device performing the printing process maybe done, or an input of various pieces of print setting information maybe done.

In the printer 52, as the printing sheet on which a plurality of barcodeimages 72 are printed, for example, a label sheet 62 shown in FIG. 5A isused. The label sheet 62 is an A4 size sheet, which includes 21 itemlabels 70 arranged in a matrix of seven rows and three columns. Thenumber 21 of the item labels 70 on one label sheet 62 is an example of afirst number).

It is noted that, when a print process of the barcode image is performedusing the label sheet 62 which has 21 item labels 70, the item labels 70on which the barcode images 72 are not printed may wastefully remained.For example, when the number of exhibition object items is ten, tenpieces of barcode image data are obtained from the server 54, and thebarcode images 72 are printed on the item labels 70 of the label sheet62 based on the ten pieces of image data. In such a case, as shown inFIG. 5A, the barcode images 72 are printed on ten of twenty-one (21)item labels 70, but the barcode images 72 are not printed on the othereleven item labels 70. When no images are printed on the remainingeleven item labels 70, the eleven item labels 70 are wasted.

In view of the above, the communication system 1 is configured suchthat, in the printer 50, a print process of the barcode image 72 isperformed using a tape-type label sheet 60 on which the item labels 70are arranged in one line, or one column (which is an example of an Ncolumn) as shown in FIG. 5B.

The tape-type label sheet 60 includes a plurality of item labels 70arranged in one column (i.e., one line) along a direction where thetape-type label sheet 60 extends. The label sheet 60 is rolled andaccommodated in the printer 50. On the item labels 70 included in thelabel sheet 60, the images are sequentially printed on the item labels70. Further, the printer 50 is configured such that, every time when thebarcode image 74 is printed on the item label 70, the printer 50 can cutout the printed item label 70 of the label sheet 60. In other words, theprinter 50 is configured to print an image on a portion (of which sizeis an example of a second size) of the label sheet 60, which portionwill be cut out from the label sheet 60 after one image has been printedon the tape-type label sheet 60. The size of a portion on which an imageis printed is, for example, 52 mm×29 mm, or 62 mm×29 mm. It is notedthat the printer 50 is configured to print images on the label sheet 60having item labels of which size is 52 mm×29 mm, 62 mm×29 mm or thelike, but the printer 50 may not be configured to execute a printprocess on a generally used printing sheet such as an A4 size printingsheet.

In response to the printer 52 being selected as a device which is toperform the print process, the control program 26 requests the printerdriver 28 for capability information of the printer 50. When the printer52 is selected as the device to perform the print process, the controlprogram 26 may request the printer driver 28 for capability informationat a timing when the application-compliant setting screen 86 isdisplayed, or at another timing. The control program 26 requests theprinter driver 28 for the capability information by, for example,calling of an API (Application Programming Interface) (e.g.,GetPrintCapabilities). When receiving the API call, the printer driver28 outputs the capability information of the printer 50 to the controlprogram 26. The capability information is information indicating aperformance regarding the print process of the printer 50, and includesusable printing sheet sizes.

Then, the control program 26 determines setting contents of theapplication-compliant setting screen 86 based on the capabilityinformation received from the printer driver 28. Concretely, as settablesizes of the printing sheets, 62 mm×29 mm and the like are set, whilethe sizes of the generally used printing sheets such as the A4 size willnot be set. With this configuration, when the printer 50 is set as thedevice which performs the print process, only the sizes of the sheets onwhich the printer 50 can performs the print process are selectable onthe application-compliant setting screen 89. Further, as the size of thesettable printing sheet, the size of 62 mm×29 mm is set, it is indicatedon a preview screen 90 of the application-compliant setting screen 86that the print process can be performed on the printing sheet of whichsize is 62 mm×29 mm.

When a property button 92 is operated on the application-compliantsetting screen 86, by the API call from the control program 26, theprinter driver 28 is requested to display the setting screen, therebythe printer driver 28 displaying a driver-compliant first setting screen100 shown in FIG. 7 on the LCD 16. The driver-compliant first settingscreen 100 is a screen through which print setting information of anormal label print process by the printer 50 is input. On thedriver-compliant first setting screen 100, size setting buttons 102 forsetting the sizes of the printing sheets, a mirror print setting button104 for setting a mirror print process, and a trim setting button 106for setting a trim print process are displayed.

The mirror print process is a process of printing an image in a reversedmanner as if the image is mirrored. A trim process is a process ofprinting an image with trimming a blank space if there is a blank spaceat a trailing end of the image which is to be printed on the item label70. Then, the size setting buttons 102 and the like are operated on thedriver-compliant first setting screen 100 to input various pieces ofprint setting information, and thereafter, when an OK button 108 isoperated, a normal label print process to be executed by the printer 50is finished.

Not only on the driver-compliant first setting screen 100, but on adriver-compliant second setting screen 112 shown in FIG. 8, it ispossible to set the normal label print process. When an advanced settingtab 109 is operated, the printer driver 28 displays the driver-compliantsecond setting window 112 on the LCD 16. On the driver-compliant secondsetting screen 112, radio buttons 114 for setting image tone, a firstslider 115 for setting brightness, a second slider 116 for settingcontrast and the like are displayed. When, on the driver-compliantsecond setting screen 112, the radio buttons 114 and the like areoperated to input the various settings, and thereafter, when the OKbutton 108 is operated, setting of the normal label print process to beexecuted by the printer 50 is finished. The normal label print processby the printer 50 will be described in detail later.

When a crop print tab 118 is operated, the printer driver 28 displays adriver-compliant third setting screen 120 as shown in FIG. 9 on the LCD16. The driver-compliant third setting screen 120 is a screen forinputting the print setting information of the crop print process by theprinter 50. On the driver-compliant third setting screen 120, a checkbox122 for inputting the crop print setting information indicating that thecrop print setting is ON, a side setting button 124 for inputting thesetting information indicating the size of the printing sheet, a printimage 126 of the label sheet 60, on which the print process is performedby the crop print process is displayed, are displayed. It is noted thatthe crop print process is, as described above, a print process ofextracting the barcode image data which includes the barcode data and isobtained from the server 54, and printing the barcode images 72represented by the barcode image data on the item labels 70 of the labelsheet 60 by the printer 50.

When the user wishes the crop print process is performed, the useroperates to check the checkbox 122 on the driver-compliant third settingscreen, thereby the crop print process being effective. Then, the useroperates the side setting button 124 to input the setting informationindicating the size of the sheet. According to the illustrativeembodiment, with the size setting button, only the setting informationindicating the size of the label size sheets 62 can be input. As above,on the driver-compliant third setting screen 120, the checkbox 122 andthe like are operated to input the various pieces of print settinginformation, and thereafter, when the OK button 108 is operated, inputof the setting information regarding the crop print process to beexecuted by the printer 50 is finished.

Further, the print setting information input through thedriver-compliant first setting screen 100 and the driver-compliantsecond setting screen 112 are also used in the crop print process.

When the crop print process is effective, the radio buttons 114 of thedriver-compliant second setting screen 112 are grayed out, therebyexcluded from user operation targets. It is because, the crop printprocess is a process of printing the barcode images 72 on the itemlabels 70, and it is preferable that an appropriate image tone forprinting the barcodes 72 is set in advance, while it is not preferablethat the user changes the print image tone arbitrarily. It is notedthat, even if the crop print process is effective, the first slider 115and the second slider 116 of the driver-compliant second setting scree112 are not excluded from the user operation targets. Accordingly, it ispossible for the user to change the brightness and the contrast of theprint setting when the crop print process is performed.

When the crop print process is effective, the size setting buttons 102,the mirror print setting button 104 and the trim setting button 106 aregrayed out on the driver-compliant first setting screen 100 shown inFIG. 7, thereby excluded from the user operation target. It is because,the size of the printing sheet is set on the driver-compliant thirdsetting screen 120, and it is not preferable to change the size of theprinting sheet on the driver-compliant first setting screen 100. Themirror print process is a process of printing the image as if the imageis mirrored. If the barcode 72 is printed reversely, the barcode may notbe correctly read. Therefore, the mirror print process is notappropriate for the print process of the barcode image 72. Further, thetrim print process is a process of printing an image with removing ablank space at the trailing end of the image. If a blank space isincluded at an end portion of a barcode in the barcode image 72 and isremoved, the barcode may not be correctly read. therefore, the tripprint process is not appropriate as the print process of the barcodeimage 72.

When the checkbox 122 and the size setting button 124 are operated onthe driver-compliant third setting screen 120 and the crop print processis set to be effective, or when the first slider 115 and the like isoperated on the driver-compliant second setting screen 112, andthereafter, the OK button 108 is operated, the printer driver 28 outputs“DevMode” 130 shown in FIG. 10A to the control program 26.

It is noted that “DevMode” 130 is an example of an informationstructure, and indicates the print setting information input through thedriver-compliant first setting screen 100, the driver-compliant secondsetting screen 112, and the driver-compliant third setting screen 120.As shown in FIG. 10A, the information structure DevMode 130 includes aPublic area 132 and a Private area 134. The Public area 132 includes astructure member dmpapersize (which is known as dmPaperSize defined byMicrosoft® as a structure member of the information structure DevMode),and elements width and height, while the Private area 134 includes anelement outputpapersize, and the elements width and height, the cropprint process information, the mirror print process information, and thetrim print process information. It is noted that the structure memberdmpapersize indicates an ID number which represents a sheet size.Similarly, the element outputpapersize also indicates an ID number whichrepresents a sheet size. Thus, the structure member dmpapersize and theelement outputpapersize are related to each other.

The structure member dmpapersize included in the Public area 132indicates an ID number indicating the sheet size of the image includingone or more print-target barcode images 72, and the elements width andheight included in the Public area 132 are concrete dimensions of thesheet size corresponding to the ID number. The element outputpapersizeincluded in the Private area 134 indicates an ID number indicating theprinting sheet size, and the elements width and height included in thePrivate area 134 are concrete dimensions of the sheet size correspondingto the ID number.

According to the illustrative embodiment, the ID number “261” is thesize of the sheet (which is an example of the first size) including theA4 size sheet and the Letter size sheet. As shown in FIG. 11, the sizeof the A4 size sheet 140 is 210 mm×297 mm, and the size of the Lettersize sheet 142 is 215.9 mm×279.4 mm Therefore, the size of the sheet 144which covers both the A4 size sheet 140 and the Letter size sheet 142 is215.9 mm×297 mm, and the ID number “261” indicates the size of such asheet, which will be referred to as an A4-Letter size. Further, the IDnumber “260” indicates the sheet size of 62 mm×29 mm.

Thus, the information structure DevMode 130 shown in FIG. 10A indicatesthat the sheet size of an image including one or more print-targetbarcode images 72 is the A4-Letter size, and the size of the printingsheet is 62 mm×29 mm indicates the sheet size which is the label sizeprintable by the printer 50.

The crop print process information included in the Private area 134 isthe print setting information input through the driver-compliant thirdsetting screen 120, that indicates the print setting information inputby the user operation with respect to the checkbox 122. It is noted thatthe information structure DevMode 130 shown in FIG. 10A is output whenthe crop print process is effective. Therefore, in the informationstructure DevMode 130 shown in FIG. 10A, the crop print processinformation included in the Private area 134 is set to ON. That is, itis indicated in the information structure DevMode 130 shown in FIG. 10Athat the crop print process is set.

The mirror print process information and the trim print processinformation included in the Private area 134 indicate the print settinginformation input through the driver-compliant first setting screen 100,that is, the print setting information input by operations with respectto the mirror setting button 104 and the trim setting button 106. It isnoted that the information structure DevMode 130 shown in FIG. 10A isoutput when the crop print process is set to be effective. When the cropprint process is effective, the mirror setting button 104 and the trimsetting button 106 are excluded from the user operation targets. Thatis, when the crop print process is effective, it is impossible to set astate to perform the mirror print process or the trim print process.Accordingly, in the information structure DevMode 130 shown in FIG. 10A,the mirror print process information and the trim print processinformation included in the Private are 134 are indicated to be in OFFstates, respectively. That is, the information structure DevMode 130shown in FIG. 10A indicates that either the mirror print process or thetrim print process is not set.

The control program 26 outputs a print instruction to the printer driver28 through the OS 32. For example, when the print button 88 is operatedon the application-compliant setting screen 86 (see FIG. 6), the controlprogram 26 outputs the print instruction to the printer driver 28. Inthis case, raster format image data (which is an example of first imagedata) which has been converted, based on the PDF format image data, sothat the printer driver 28 can interpret, and the thus converted rasterimage data is output to the printer driver 28 together with the printinstruction and the information structure DevMode 130 received from theprinter driver 28. It is noted that the PDF format image data has beenconverted to image data representing an image of which size correspondsto the sheet indicated by the structure member dmpapersize in accordancewith the information structure DevMode 130 which the control program 26has received from the printer driver 28. When the control program 26,which received the information structure DevMode 130 shown in FIG. 10A,outputs the PDF data which is created by the server 54 such that thebarcode images 72 are arranged to correspond to the item labels 70 ofthe A4 size label sheet 62, the image data which has been converted tothe raster format image data representing the A4-Letter size image isoutput to the printer driver 28. According to the illustrativeembodiment, the PDF format image data, created by the server 54 andrepresenting the A4 size image, is converted to the image datarepresenting the A4-Letter size image, without being magnified/reduced.It is noted that the Letter size image data created by the server 54 isalso converted to the image data representing the A4-Letter size imagewithout being magnified/reduced.

When the print setting information is input to the printer driver 28 ata timing other than the timing at which the property button 92 isoperated in the application-compliant setting screen 86, the controlprogram 26 outputs the image data to the printer driver 28, through theOS 32, at a timing after receipt of the information structure DevMode130 from the printer driver 28.

Next, when receiving the print instruction and the like from the controlprogram 26, the printer driver 28 requests the OS 32 to convert thevector format image data received together with the print instruction tothe bitmap format image data. In response to receipt of the aboverequest, the OS 32 converts the vector format image data to the bitmapformat image data.

Next, based on the information structure DevMode 130 as shown in FIG. 10and received together with the print instruction, the printer driver 28determines whether the print process subject to the print instructionreceived from the control program 26 is the crop print process. Asmentioned above, the crop print process information is included in thePrivate area 134 of the information structure DevMode 130. When the cropprint process information is set to ON, the crop print process iseffective, while when the crop print process information is set to OFF,the crop print process is not effective. Thus, based on the informationstructure DevMode 130, it is determined whether the print processsubject to the print instruction is the crop print process or not.

When it is determined, based on the information structure DevMode 130received from the control program 26, that the print process subject tothe print instruction received from the control program 26 is the cropprint process, it is further determined whether the structure memberdmpapersize included in the Public area 132 of the information structureDevMode 130 indicates the A4-Letter size or not. When it is determinedthat the structure member dmpapersize indicates the A4-Letter size, theprinter driver 28 extracts the image data indicating the barcode image72 (which is an example of second image data) from the bitmap formatimage data converted by the OS 32.

Specifically, the printer driver 28 firstly analyzes the bitmap formatimage data and detects characteristic data having characteristics as theimage data indicating the barcode. Then, the printer driver 28 obtainsposition information indicating a position of the image designated bythe detected characteristic data as position information indicating theposition of the barcode 74 included in the barcode image 72. Then, theprinter driver 28 calculates an offset amount of the barcode 74 withrespect to a coordinate of a particular corner of the image based on thebitmap format image data. To the printer driver 28, dimensions of thewidth and height of the barcode image 72 have been input in advance.Then, the printer driver 28 identifies an area of the barcode image 72(hereinafter, referred to a cropping area) extracted from the imagebased on the bitmap format image data, based on the offset amount of thebarcode 74, and the dimensions of the width and the height of thebarcode image 72. Then, the printer driver 28 extracts the image data ofthe cropping area from the image data of the bitmap format. Thus, theimage data of the barcode image 72 is extracted. Incidentally, when aplurality of pieces of characteristic data are detected, the printerdriver 28 extracts the image data of the plurality of barcode images 72respectively corresponding to the detected plurality of pieces ofcharacteristic data. The printer driver 28 stores data indicating thenumber of extracted barcode images 72 in the memory 14.

Next, when the image data of the barcode images 72 are extracted, theprinter driver 28 determines whether the barcode images 72 fit in theirprint areas, respectively. Firstly, the print areas of the barcodeimages 72 are identified based on an outputpapersize included in theprivate area 134 of the information structure DevMode 130 received fromthe control program 26. For example, in the information structureDevMode 130 indicated in FIG. 10A, the ID number of the outputpapersizeis “260” and the printing sheet size is 62 mm×29 mm. Further, the IDnumbers and printing areas having the sheet sizes corresponding to theID numbers are respectively associated with each other. Therefore, theprinting area corresponding to the ID number “260” is identified. Then,it is determined whether the barcode images 72 fit in the identifiedprinting areas, respectively.

In this case, when it is determined that the barcode image 72 cannot fitin the printing area, the barcode image 72 protrudes from the area ofthe sheet of 62 mm×29 mm, that is the sheet of which size is inputthorough the driver-compliant third setting screen 120 as shown in FIG.9. Therefore, an error process (e.g., a process of displaying an errorscreen indicating that the crop printing cannot be performed) isexecuted. On the other hand, when it is determined that the barcodeimage 72 fits in the printing area, it is determined whether barcodeimage 72 fits in the printing area when the barcode image 72 is orientedsuch that a direction in which lines constituting a striped pattern ofthe barcode extend is aligned with a sub scanning direction.

When it is determined that the barcode image 72 fits in the printingarea, the printer driver 28 creates the image data such that the barcodeimage 72 is arranged within the printing area having the printing sheetsize, that is, the printing area of the sheet of which size is 62 mm×29mm Next, the printer driver 28 converts the image data to image datahaving a format which is printable by the printer 50 (e.g., the vectorformat image data), and creates the print image data (which is anexample of first print data). In this case, one barcode image 72 is notarranged over two or more sheets each having the size of 62 mm×29 mm,but is arranged on one sheet of 62 mm×29 mm, thereby the print imagedata for printing the one barcode image 72 is arranged.

Then, the printer driver 28 outputs the print image data to the printer50. According to the above configuration, when the print process basedon the print image data is performed by the printer 50, the barcodeimage 72 is printed such that the lines constituting the striped patternof the barcode 74 extend in the sub scanning direction. Thus, it ispossible that displacement of the lines constituting the striped patternof the barcode 74 can be prevented, and the barcode 74 can be printedappropriately.

When the orientation of the barcode 74 is aligned such that thedirection in which the lines constituting the striped pattern of thebarcode 74 of the barcode image 72 extend is the sub scanning direction,and it is determined that the barcode image 72 does not fit in theprinting area, the printer driver 28 applies a rotating process to thebarcode image 72. Specifically, the orientation of the barcode image 72assumed to be rotated by 90 degrees. Next, the printer driver 28 createsthe image data such that the rotated barcode image 72 is arranged in theprint area of the sheet size of 62 mm×29 mm. Then, the printer driver 28converts the image data to image data having a format which is printableby the printer 50 (e.g., the vector format image data) to create theprint image data. Then, the printer driver 28 outputs the thus createdprint image data to the printer 50.

As above, the crop print process is performed. In the crop printprocess, when the PC 10 obtains the image data in which the barcodeimages 72 are arranged corresponding to the item labels 70, which arearranged in a matrix of seven rows and three columns, the PC 10 extractsthe image data of the barcode images 72 from the image data. Then, thePC 10 creates the print image data so that the extracted barcode images72 are printed on the label size printing sheets, respectively, therebythe printer 50 printing the barcode image 72 on the label size sheet. Itis noted that the printer 50 prints one barcode image 72 on one labelsize sheet.

That is, as the crop print process is performed, the printer 50 prints,for example, ten barcode images 72 on ten label size sheets,respectively. On the other hand, in the printer 52, when ten barcodeimages 72 are to be printed on the label sheet 62 including thetwenty-one item labels 72 arranged in a matrix of seven columns andthree rows (see FIG. 5A), eleven item labels 70 are wasted unprinted.According to the printer 50, it is possible to print the ten barcodeimages 72 without wasting even a single label size sheet (i.e., the itemlabel 70). As above, by performing the crop print process, it becomespossible to restrict wasting of the item labels 70.

It is noted that, when the crop print process is being set in accordancewith the above procedure, by executing the control program 26, therecould be a case where an API call (e.g., GetPrintCapabilities) is outputto the printer driver 28. In such a case, the printer driver 28 outputsthe information indicating that a settable sheet size is the A4-Lettersize to the control program 26 as the capability information. In a statewhere the crop print setting is not set, when the printer driver 28receives the API call (e.g., GetPrintCapabilities), the printer driver28 outputs the information indicating that a settable sheet size is alabel size (e.g., 62 mm×29 mm) to the control program 26 as thecapability information.

In the printer 50, it is possible to perform the normal print process,that is, the aforementioned normal label print process can be performed,instead of the crop print process. Specifically, in the driver-compliantfirst setting screen 100 shown in FIG. 7, the user selects the printingsheet size by operating the size setting buttons 102. Further, in thelabel print process, when the user wishes to perform the mirror printprocess or the trim print process, the user can input settings of themirror print process or the trim print process by operating the mirrorsetting button 104 or the trim setting button 106. Then, when the OKbutton 108 is operated after various pieces of print setting informationhave been input, the printer driver 28 outputs the information structureDevMode 130 shown in FIG. 10B to the control program 26.

In the information structure DevMode 130 shown in FIG. 10B, thestructure member dmpapersize in the Public area 132 represents the IDnumber indicating the size of the printing sheet selected by the sizesetting buttons 102 on the driver-compliant first setting screen 10.Concretely, in this example, the ID number is “260” indicating the sheetof which label size is 62 mm×29 mm. The width and the height in thePublic area 132 are concrete dimensions (values) of the sheetcorresponding to the ID number. Further, the element outputpapersize inthe Private area 134 indicates the ID number same as the structuremember dmpapersize in the Public area 132 (i.e., “260”), and the widthand height in the Private area 134 are concrete dimensions of the sheetsize corresponding to the ID number.

Further, the crop print process information in the Private area 134 isset to OFF. It is because the print setting information input throughthe driver-compliant first setting screen 100 is not the settinginformation of the crop print process, but is the setting informationfor the normal label print process. It is noted that the mirror printprocess information and the trim print process information in thePrivate area 134 are set to ON or OFF in accordance with user'soperations of the mirror print setting button 104 and the trim settingbutton 106 on the driver-compliant first setting screen 100.

When the control program 26 has received the information structureDevMode 130 shown in FIG. 10B and outputs the print instruction, thestructure member dmpapersize included in the Public area 132 of theinformation structure DevMode 130, that is, the vector format image datarepresenting the image having the label size of 62 mm×29 mm, theinformation structure DevMode 130 shown in FIG. 10B and the printinstruction are output to the printer driver 28 through the OS 32.

After transmitting the information structure DevMode 130 shown in FIG.10B to the control program 26, the printer driver 28 receives the printinstruction, the information structure DevMode 130 shown in FIG. 10B andthe vector format image data representing the image having the labelsize of 62 mm×29 mm from the control program 26.

Next, the printer driver 28 determines whether the print process subjectto the print instruction received from the control program 26 is thecrop print process based on the information structure DevMode 130received from the control program 26, that is, the information structureDevMode 130 shown in FIG. 10B. At this time, since the crop printprocess information is set to OFF in the information structure DevMode130 shown in FIG. 10B, it is determined that the print process subjectto the print instruction is determined not to be the crop print process.

When it is determined that the print process subject to the printinstruction is determined not to be the crop print process, it isdetermined whether the structure member dmpapersize included in thePublic area 132 of the information structure DevMode 130 indicates thelabel size. When it is determined that the structure member dmpapersizeis determined to indicate the label size, the printer driver 28 convertsthe bitmap format image data converted by the OS 32 to image data havinga format printable by the printer 50 (e.g., the vector format imagedata), thereby creating the print image data. Then, the printer driver28 outputs the created print image data to the printer 50. By theprinter 50, the print process is performed based on the print image dataoutput by the printer driver 28, thereby the normal label print processbeing completed.

It is noted that, when the image indicated by the PDF data includes onlyone barcode image 72, there could be a case where the number of thebarcode images included in the image represented by the print image datacreated by the printer drive 28 is the same as the number of barcodeimages included in the image represented by the PDF data. However, sucha case is an exceptional case. Normally, the number of the barcodeimages included in the image represented by the print image data createdby the printer driver 28 is less than the number of barcode images 72included in the image represented by the PDF data.

<Process of Printer Driver>

The crop print process and the normal label print process describedabove are performed as the CPU 12 of the PC 10 executes the printerdriver 28. Hereinafter, referring to FIGS. 12-15, processes when theprinter driver 28 is executed by the CPU 12 will be described.

When the control program 26 outputs the API call by displaying thebarcode image display screen 80, the printer driver 28 receives, asshown in FIG. 12, the API call (S100). Then, when receiving the APIcall, the printer driver 28 determines whether the crop print process isset on the driver-compliant third setting screen 120 shown in FIG. 9(S102).

When the crop print process is set (S102: YES), the printer driver 28outputs the capability information indicating the A4-Letter size as theprintable sheet size to the control program 26 (S104). Then, the processillustrated in the flowchart shown in FIG. 12 is terminated. When it isdetermined that the crop print process is not set (S102: NO), theprinter driver 28 outputs the capability information indicating thelabel size as the settable sheet size to the control program (S106).Then, the process illustrated in the flowchart shown in FIG. 12 isterminated.

When the control program 26 outputs the API call in response tooperation of the property button 92 on the application-compliant settingscreen 86 (see FIG. 6), the printer driver 28 receives the API call(S110) as shown in FIG. 13. When the API call is received, the printerdriver 28 displays the driver-compliant first setting screen 100 on theLCD 16 (S112). In response to the operation of the crop print tab 118,the printer driver 28 displays the driver-compliant second settingscreen 112 or the driver-compliant third setting screen 120 on the LCD16 (S112).

When the OK button 108 is operated in the driver-compliant first, secondor third setting screen 100, 112 or 120, the printer driver 28 receivesthe operation of the OK button 108 (S114). Next, when the operation ofthe OK button 108 is received, the printer driver 28 determines whetherthe crop print process is set (S116).

When the crop print process is set (S116: YES), the printer driver 28outputs the information structure DevMode 130 shown in FIG. 10A, thatis, the information structure DevMode 130 indicating the A4-Letter sizeas the structure member dmpapersize to the control program 26 (S118).Thereafter, the process show in FIG. 13 is terminated. On the otherhand, when the crop print process is not set (S116: NO), the printerdrive 28 outputs the information structure DevMode 130 shown in FIG.10B, that is, the information structure DevMode 130 indicating the labelsize as the structure member dmpapersize to the control program 26(S120). Then, the process shown in FIG. 13 is terminated.

Further, when the control program 26 outputs the print instruction, theimage data and the information structure DevMode 130, the printer driver28 receives the same as shown in FIG. 14 (S130). Then, the printerdriver 28 requests the OS 32 to convert the vector format image data tothe bitmap format image data (S132). Next, the printer driver 28receives the bitmap format image data from the OS 32 (S134).

Next, in S136, the printer driver 28 determines whether the printprocess subject to the print instruction is the crop print process basedon the information structure DevMode 130 received in S130. When it isdetermined that the print process subject to the print instruction isthe crop print process (S136: YES), the printer driver 28 determineswhether the structure member dmpapersize in the Public area 132 of theinformation structure DevMode 130 received in S130 indicates theA4-Letter size (S138).

When it is determined that the structure member dmpapersize in thePublic area 132 indicates the A4-Letter size (S138: YES), the printerdriver 28 extracts, in S140, the barcode images 72 from the bitmapformat image data received in S134. Next, the printer driver 28determines whether the barcode images 72 are extracted from the bitmapformat image data based on data indicating the number of extractedbarcode images 72 stored in the memory 14 (S142). When it is determinedthat the barcode images 72 are extracted (S142: YES), the printer driver28 determines whether there exists a barcode image 72 which has beenextracted but not processed (S143). Specifically, the printer driver 28determine whether there remains a barcode image 72 which has not beensubjected to S144-S154 (described later) among the barcode images 72having been extracted. When there exists an unprocessed extractedbarcode image 72 (S143: YES), the printer driver 28 determines whetherthe extracted barcode image 72 fits within the print area of the sheet(S144).

When it is determined that the extracted barcode image 72 fits withinthe print area of the sheet (S144: YES), the printer driver 28determines whether the barcode image 72 fits within the print area ofthe sheet with the extending direction of the lines constituting thestriped pattern of the barcode 74 of the barcode image 72 being alignedwith the sub scanning direction (S146). When it is determined that thebarcode image 72 fits in the print area of the sheet with the directionof the lines constituting the striped patter of the barcode 74 beingaligned in the sub scanning direction (S146: YES), process proceeds toS148. When it is determined that the barcode image 72 does not fit inthe print area of the sheet with the direction of the lines constitutingthe striped patter of the barcode 74 being aligned in the sub scanningdirection (S146: NO), the printer driver 28 performs the rotatingprocess of the barcode image 72 (S150). Thereafter, process proceeds toS148.

In S148, the printer driver 28 arranges the barcode image 72 within theprint area of the sheet. Then, the printer driver 28 creates the printimage data (S152). Next, the printer driver 28 transmits the print imagedata to the printer 50 (S154). As above, processes shown in FIGS. 14 and15 is completed.

That is, the print image data for one barcode is created in S144-S154,and transmitted to the printer 50. Then, in S142, steps S144-S154 arerepeated until decision in S142 is “NO” (i.e., ten times). By the aboveprocesses, ten barcode images 72 are printed. Further, when the printimage data is transmitted to the printer 50, the printer 50 prints oneof the labels 70 shown in FIG. 5B, and feeds the label sheet.Thereafter, as the process of S154 is executed by a plurality of times,that is, transmission of the print image data for one barcode isperformed by a plurality of times, printing of one label by the printer50 and feeding of the label sheet are repeatedly performed, therebyprinting of the barcodes are performed with the labels being aligned ina line as shown in FIG. 5B.

When it is determined that the print process subject to the printinstruction is not the crop print process (S136: NO), that is, the printprocess subject to the print instruction is the normal label printprocess, the printer driver 28 determines whether the structure memberdmpapersize in the Public area 132 of the information structure DevMode130 received in S130 indicates the label size (S156). When it isdetermined that the structure member dmpapersize of the Public area 132indicates the label size (S156: YES), steps S152 and S154 are performed,and the process shown in FIGS. 14 and 15 is finished.

When the structure member dmpapersize of the Public area 132 indicatesthe label size (S138: NO), when no barcode image 72 is extracted fromthe bitmap format image data (S142: NO), when there is no unprocessedextracted barcode image 72 (S143: NO), when the barcode image 72 doesnot fit the print area of the sheet (S144: NO), or when the structuremember dmpapersize of the Public area 132 indicates the A4-Letter size(S156: NO), an error process is performed (S158). Then, the processshown in FIGS. 14 and 15 is finished.

<Effects of Illustrative Embodiment>

The first size is the sheet size within which the first number of firstobjects can be arranged in M columns. The CPU 12 creates the first printdata used to print the second number of first objects on a second sizesheet with arranging the first objects in N columns which is smallerthan the M columns Thus, the first objects can be printed on a sheetwhich has less number of columns than the first size sheet.

The second size is a size of a portion of the tape-type label sheetafter the second number of first objects have been printed on theportion of the tape-type label sheet and cut out. With thisconfiguration, the unprinted portion of the sheet can be used.

According to the illustrative embodiment, the first print data forprinting one first object based on the extracted second image data onone second size sheet so as not to be arranged over two or more secondsize sheets. According to this configuration, the first object can beprinted on only one second size sheet.

The first object is an object including a barcode. According to theillustrative embodiment, a rendering area of the barcode included in thefirst image data is detected, and the second image data is extractedfrom a particular area including the detected area. According to thisconfiguration, the barcode can be appropriately printed as the firstobject.

The information processing apparatus has an operation receivinginterface configured to receive user operations. In response to receiptof a first operation, by the operation receiving interface, to indicateprinting of the first object on the second size sheet, a request forimage data representing the first size image is output. Further, inresponse to output of a request for image data representing the firstsize image, the CPU receives the image data representing the first sizeimage from the application. According to the above configuration, theinformation processing apparatus can obtain image data of the imageincluding all the first objects.

The information processing apparatus is further configured such that, inresponse to receipt, by the operation receiving interface, of a secondoperation, which is different from the first operation and indicatesprinting on the second size sheet, a request of image data representingthe second size image is output. Further, in response to output of therequest for the image data representing the second size image, the CPUreceives the image data representing the second size image from theapplication. Further, the CPU transmits second print data used to printthe image data representing the second size image on the second sizesheet to the printer through the communication interface. As above, thenormal printing operation to print on the second size sheet can beperformed.

According to the illustrative embodiment, in response to receipt of thefirst operation by the user operation receiving interface, informationindicating that particular print setting information from the printsetting information, which is executable when the user operationreceiving interface receives the second operation, cannot be input istransmitted to the application. With this configuration, receipt of auser operation which cannot be executed is prevented.

According to the illustrative embodiment, in response to the useroperation receiving interface receiving the first operation, output ofimage data of the second size image which is output when the useroperation receiving interface receives the second operation isprevented, while output of the image data representing the first sizeimage is permitted. According to this configuration, output of the imagedata representing the second size image can be avoided when the firstoperation is received.

In response to the user operation receiving interface receiving anoperation to designated the second side as the sheet size, the firstprint data is created. That is, the print data corresponding to theoperation is created.

According to the illustrative embodiment, the first image data iscreated such that the first object based on the extracted second imagedata is not magnified or reduced. According to this configuration, thefirst object having its original size can be printed.

According to the illustrative embodiment, the information processingapparatus has a displaying interface, and the application is capable ofdisplaying the image, which is configured such that the first object isincluded in the first size image, on the displaying interface. Theimage, which is configured such that the first object is included in thesecond size image, can also be displayed on the displaying interface.With this configuration, the user can browse the image, which isconfigured such that the first object is included in the second sizeimage, as a preview screen.

It is noted that aspects of the present disclosures need not be limitedto the above-described configuration of the illustrative embodiment.Rather, various modifications/improvements could be proved based on theknowledge of person skilled in the art. For example, in theabove-described illustrative embodiment, as printing sheets used by theprinter 50, the label sheet 60 on which item labels 70 are arranged inone line (see FIG. 5B) is employed. However, the label sheet 66 on whichthe item labels 70 are arranged in two lines (see FIG. 5C) may beemployed. In such a case, for example, the sheet size may be set to 104mm×29 mm or 124 mm×29 mm, and the printer driver 28 may create the printimage data arranging two barcode images in two lines in S144-S154 (FIG.14), and transmit the same to the printer.

Further, in the above-described embodiment, the disclosed technique isapplied to a method of printing barcode images 72 on the item labels 70.This technique may be applied to a method of printing various kinds ofimages on the item labels 70. For example, the technique may be appliedto print a medicine dosing image illustrating a dosing method ofmedicine on a label which can be applied onto a notebook. In such acase, the printer driver 28 may extract dosing method image data, whichis image data representing an image having a characteristic of medicinedosing method image in S140, and performs the steps after S140 withusing the medicine dosing method image data as the target data.

According to the above-described illustrative embodiment, in response tothe user operation to input a check in the checkbox 122, the crop printprocess is set to be effective. Optionally or alternatively, anoperation to designate a particular sheet size in the size settingbutton of FIG. 7 may be an operation to make the crop print processeffective. In this case, the particular sheet size may be a size of asheet on which the printer 50 cannot perform the print process (e.g., A4size, Letter size and the like).

According to the illustrative embodiment described above, the processesshown in FIG. 12-FIG. 15 are performed by the CPU 12. It is noted that apart of or all of the processes may be performed by an ASIC or otherlogical integrated circuits, or by cooperation of the CPU 12, ASIC andother logical integrated circuits.

What is claimed is:
 1. A non-transitory computer-readable medium for an information processing apparatus having a communication interface and a controller, the non-transitory computer readable medium storing instructions realizing an image data arranging program, the image data arranging program causing, when executed, the controller to: receive first image data representing a first size image from a first image data providing program via an operating system, the operating system being installed in the information processing apparatus, the controller being configured to read the first image data providing program capable of outputting image data, the first image data being data indicating the first size image, the first size image including a plurality of object images arranged in a first arranged manner within a first size, the first size being one of A-series paper sizes and a letter size; analyze the first image data to extract a plurality of pieces of object data indicating the plurality of the object images included in the first size image, respectively; create second image data representing a second size image, the second size image including the plurality of the object images indicated by the extracted plurality of pieces of object data arranged in a second arranged manner within a second size, the second size being a label size different from the A-series paper sizes and the letter size, the second arranged manner being a manner different from the first arranged manner; and output the second image data to cause a printer to print the second image data.
 2. The non-transitory computer-readable medium according to claim 1, wherein the first size is a size of a printing sheet on which a first number of the object images can be arranged in the first arranged manner, the first size image including a second number of the object images; and wherein the label size is a size of a cuttable tape-type sheet after the second number of the object images have been printed on a portion of the tape-type sheet and the portion has been cut out.
 3. A non-transitory computer-readable medium for an information processing apparatus having a communication interface and a controller, the non-transitory computer readable medium storing instructions realizing an image data arranging program, the image data arranging program causing, when executed, the controller to: receive first image data representing a first size image from a first image data providing program via an operating system, the operating system being installed in the information processing apparatus, the controller being configured to read the first image data providing program capable of outputting image data, the first image data being data indicating the first size image, the first size image including a plurality of object images arranged in a first arranged manner within a first size, the first size being one of A-series paper sizes and a letter size; analyze the first image data to extract a plurality of pieces of object data indicating the plurality of object images included in the first size image, respectively; create second image data representing a second size image, the second size image including the plurality of the object images indicated by the extracted plurality of pieces of object data arranged in a second arranged manner within a second size, the second size being a label size different from the A-series paper sizes and the letter size, the second arranged manner being a manner different from the first arranged manner; and output the second image data to cause a printer to print the second image data.
 4. The non-transitory computer-readable medium according to claim 1, wherein the second image data is created such that each of the plurality of the object images is arranged and printed on one sheet of a printing sheet having the second size without being arranged over two or more of printing sheets having the second size.
 5. The non-transitory computer-readable medium according to claim 1, wherein at least one of the object images includes a barcode, and wherein the image data arranging program causes the controller to detect an image area of the barcode included in the first image data, and extract the plurality of the object images from a particular area including the detected image area of the barcode.
 6. The non-transitory computer-readable medium according to claim 1, wherein the information processing apparatus has an operation receiving interface configured to receive user operations, and wherein the image data arranging program causes the controller to: output a first request for the first image data representing the first size image in response to the operation receiving interface receiving a first operation indicating printing the plurality of object images on a printing sheet having the first size; and receive the image data representing the first size image from the first image data providing program in response to output of the first request for the first image data representing the first size image.
 7. The non-transitory computer-readable medium according to claim 6, wherein the image data arranging program causes the controller to: output a second request for the second image data representing a second size image in response to the operation receiving interface receiving a second operation which is different from the first operation and indicates printing on a printing sheet having the second size; in response to output the second request for the second image data representing the second size image, receive the second image data representing the second size image from the first image data arranging program; and transmit the second image data to cause the printer to print the second image data.
 8. The non-transitory computer-readable medium according to claim 7, wherein the image data arranging program causes the controller to output information indicating particular print setting information from among print setting information which can be input when the operation receiving interface receives the second operation to the first image data providing program in response to the operation receiving interface receiving the first operation.
 9. The non-transitory computer-readable medium according to claim 7, wherein the image data arranging program causes the controller to output information indicating output of image data of the second size image, which is output when the operation receiving interface receives the second operation is prohibited and output of image data of the first size image is allowed to the first image data providing program, in response to the operation receiving interface receiving the first operation.
 10. The non-transitory computer-readable medium according to claim 6, wherein the image data arranging program causes the controller to create the second image data in response to the operation receiving interface receiving an operation to designate the second size as a size of a printing sheet.
 11. The non-transitory computer-readable medium according to claim 1, wherein the image data arranging program causes the controller to create the second image data without changing the size of each of the plurality of the object images indicated by the extracted plurality of pieces of object data.
 12. The non-transitory computer-readable medium according to claim 1, wherein the information processing apparatus comprises a display interface, wherein the first image data providing program causes the controller to display an image which is configured such that each of the plurality of the object images is included in the first size image on the display interface, and wherein the image data arranging program causes the controller to display an image which is configured such that each of the plurality of the object images is included in a second size image on the display interface.
 13. An information processing apparatus having a communication interface and a controller, the controller being configured to: receive first image data representing a first size image, the first image data being data indicating the first size image including a plurality of object images arranged in a first arranged manner within a first size, the first size being one of A-series paper sizes and a letter size; analyze the first image data to extract a plurality of pieces of object data indicating the plurality of object images included in the first size image, respectively; create second image data representing a second size image, the second size image including the plurality of the object images indicated by the extracted plurality of pieces of object data arranged in a second arranged manner within a second size, the second size being a label size different from the A-series paper sizes and the letter size, the second arranged manner being a manner different from the first arranged manner; and output the second image data to cause a printer to print the second image data.
 14. An information processing apparatus having a communication interface and a controller, the controller being configured to: receive first image data representing a first size image, the first image data being data indicating an first size image in which a plurality of object images are arranged in a first arranged manner within the first size, the first size being one of A-series paper sizes and a letter size; analyze the first image data to extract a plurality of pieces of object data indicating the plurality of object images included in the first size image, respectively; create second image data representing a second size image, the second size image including the plurality of the object images indicated by the extracted plurality of pieces of object data arranged in a second arranged manner within a second size, the second size being a label size different from the A-series paper sizes and the letter size, the second arranged manner being a manner different from the first arranged manner; and output the second image data to cause a printer to print the second image data. 